package com.songlanyun.modules.withdraw.model.dto;

import com.songlanyun.common.drive.ValueObject;
import com.songlanyun.common.enums.WithdrawConstant;
import com.songlanyun.common.validator.group.AddGroup;
import com.songlanyun.common.validator.group.UpdateGroup;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.Max;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;

/**
 * 提现列表
 *
 * @author Mark
 * @email sunlightcs@gmail.com
 * @date 2020-11-20 17:47:55
 */
@Data
public class ShopWithdrawDTO implements ValueObject {


    /**
     * 提现金额
     */
    @NotNull(message = "提现金额不能为空")
    private BigDecimal money;

    /**
     * 业务单号(提现单号)
     */
    private String businessCode;
    /**
     * 流水号（第三方支付单号手填）
     */
    private String thirdPayCode;
    /**
     * 收款方式：
     * 0微信，
     * 1支付宝，
     * 2银行
     * 3现金支付
     */
    @NotNull(message = "收款方式不能为空")
    private Integer paymentTerm;

    /**
     * 收款人
     */
    @Length(max = 50, message = "收款人姓名不能超过50个字")
    private String payee;
    /**
     * 提现账户
     */
    @Length(max = 50, message = "提现账户不能超过50个字")
    private String withdrawAccount;
    /**
     * 提现手机
     */
    private String withdrawMobile;

    /**
     * 用户银行卡ID
     */
    private Long userBankId;
    /**
     * 银行名称
     */
    private String bankName;
}
